# 定义变量（图片中未显示但实际运行需要的基础数据）
name = "小明"
age = 27
address = "北京市昌平区"

# 1. 使用位置参数格式化（通过索引指定顺序）
# 注意：原代码中字符串括号数量与实际参数匹配（3个参数对应3个括号）
string1 = '我叫{1}，今年{0}岁了，来自{2}。'  # {0}对应age，{1}对应name，{2}对应address
print(string1.format(age, name, address))  # 输出：我叫小明，今年27岁了，来自北京市昌平区。

# 2. 使用关键字参数格式化（通过变量名指定，更清晰）
# 修正原代码中的语法错误：将“name-name”改为“name=name”（赋值符号应为=）
string2 = '我叫{name}，今年{age}岁了，来自{address}。'
print(string2.format(name=name, age=age, address=address))  # 输出：我叫小明，今年27岁了，来自北京市昌平区。

# 3. 使用f-string格式化（Python3.6+支持，最简洁的方式）
# 直接在字符串前加f，括号内可直接写变量名
string3 = f'我叫{name}，今年{age}岁了，来自{address}。'
print(string3)  # 输出：我叫小明，今年27岁了，来自北京市昌平区。



def time_format_converter():
    # 定义各地区的时间格式模板（键为地区名称，值为格式字符串）
    time_formats = {
        "中国": "{year}年{month:02d}月{day:02d}日 {hour:02d}:{minute:02d}:{second:02d}",
        "美国": "{month:02d}/{day:02d}/{year} {hour:02d}:{minute:02d}:{second:02d}",
        "英国": "{day:02d}/{month:02d}/{year} {hour:02d}:{minute:02d}:{second:02d}",
        "澳大利亚": "{day:02d}/{month:02d}/{year} {hour:02d}:{minute:02d}:{second:02d}",
        "法国": "{day:02d}/{month:02d}/{year} {hour:02d}:{minute:02d}:{second:02d}",
        "德国": "{day:02d}.{month:02d}.{year} {hour:02d}:{minute:02d}:{second:02d}",
        "俄罗斯": "{day:02d}.{month:02d}.{year} {hour:02d}:{minute:02d}:{second:02d}",
        "加拿大": "{year}-{month:02d}-{day:02d} {hour:02d}:{minute:02d}:{second:02d}"
    }
    
    # 显示支持的地区
    print("支持的地区：中国、美国、英国、德国、俄罗斯、澳大利亚、法国、加拿大")
    
    # 输入时间组件（带数据验证）
    while True:
        try:
            year = int(input("请输入年份（如2025）："))
            month = int(input("请输入月份（1-12）："))
            day = int(input("请输入日期（1-31）："))
            hour = int(input("请输入小时（0-23）："))
            minute = int(input("请输入分钟（0-59）："))
            second = int(input("请输入秒（0-59）："))
            
            # 简单的合法性验证（实际应用可更复杂）
            if not (1 <= month <= 12 and 1 <= day <= 31 and 0 <= hour <= 23 and 0 <= minute <= 59 and 0 <= second <= 59):
                print("输入的时间格式不合法，请重新输入！")
                continue
            break
        except ValueError:
            print("输入必须为整数，请重新输入！")
    
    # 输入地区并验证
    while True:
        region = input("请输入目标地区：")
        if region in time_formats:
            break
        print("不支持该地区，请从支持列表中选择！")
    
    # 格式化并输出结果
    formatted_time = time_formats[region].format(
        year=year, month=month, day=day, hour=hour, minute=minute, second=second
    )
    print(f"\n{region}格式的时间为：{formatted_time}")

# 运行转换器
time_format_converter()